#ifndef VERSION_H
#define VERSION_H

#include <iostream>
#include <QImage>

#include "point.h"
#include "pixel.h"
#include "canvas.h"
#include "converter.h"

using namespace std;

#define VERSION_7  42232  // 001010010011111000
#define VERSION_8  63108  // 001111011010000100
#define VERSION_9  157028 // 100110010101100100
#define VERSION_10 208020 // 110010110010010100
#define VERSION_11 114548 // 011011111101110100
#define VERSION_12 72588  // 010001101110001100
#define VERSION_13 231532 // 111000100001101100

class version
{
public:
    version();
    void checkVersion (point upperLeft, point upperRight, point lowerLeft, int pixelProportion, QImage *img);
    int getVersionINFO ();

    void setCanvas (canvas *log);

private:
    int versionINFO;

    canvas *log;

    int checkExactVersion (point upperRight, point lowerLeft, int pixelProportion, QImage *img);
};

#endif // VERSION_H
